package com.icss.regie.weixin.gateways;

import com.icss.regie.weixin.beans.AddAccountRequest;
import com.icss.regie.weixin.beans.AddAccountResponse;
import com.icss.regie.weixin.beans.AddMpNewsImageRequest;
import com.icss.regie.weixin.beans.AddMpNewsImageResponse;
import com.icss.regie.weixin.beans.AddMpNewsRequest;
import com.icss.regie.weixin.beans.AddMpNewsResponse;
import com.icss.regie.weixin.beans.BlackRequest;
import com.icss.regie.weixin.beans.BlackResponse;
import com.icss.regie.weixin.beans.CloseSessionRequest;
import com.icss.regie.weixin.beans.CloseSessionResponse;
import com.icss.regie.weixin.beans.CountMaterialRequest;
import com.icss.regie.weixin.beans.CountMaterialResponse;
import com.icss.regie.weixin.beans.CreateGroupRequest;
import com.icss.regie.weixin.beans.CreateGroupResponse;
import com.icss.regie.weixin.beans.CreateMenuRequest;
import com.icss.regie.weixin.beans.CreateMenuResponse;
import com.icss.regie.weixin.beans.CreateRuleMenuRequest;
import com.icss.regie.weixin.beans.CreateRuleMenuResponse;
import com.icss.regie.weixin.beans.CreateSessionRequest;
import com.icss.regie.weixin.beans.CreateSessionResponse;
import com.icss.regie.weixin.beans.CreateTagRequest;
import com.icss.regie.weixin.beans.CreateTagResponse;
import com.icss.regie.weixin.beans.DeleteAccountRequest;
import com.icss.regie.weixin.beans.DeleteAccountResponse;
import com.icss.regie.weixin.beans.DeleteGroupRequest;
import com.icss.regie.weixin.beans.DeleteGroupResponse;
import com.icss.regie.weixin.beans.DeleteMediaRequest;
import com.icss.regie.weixin.beans.DeleteMediaResponse;
import com.icss.regie.weixin.beans.DeleteMenuRequest;
import com.icss.regie.weixin.beans.DeleteMenuResponse;
import com.icss.regie.weixin.beans.DeleteTagRequest;
import com.icss.regie.weixin.beans.DeleteTagResponse;
import com.icss.regie.weixin.beans.DeleteTemplateRequest;
import com.icss.regie.weixin.beans.DeleteTemplateResponse;
import com.icss.regie.weixin.beans.DownloadMaterialRequest;
import com.icss.regie.weixin.beans.DownloadMaterialResponse;
import com.icss.regie.weixin.beans.DownloadMediaRequest;
import com.icss.regie.weixin.beans.DownloadMediaResponse;
import com.icss.regie.weixin.beans.GetIndustriesRequest;
import com.icss.regie.weixin.beans.GetIndustriesResponse;
import com.icss.regie.weixin.beans.ListAccountRequest;
import com.icss.regie.weixin.beans.ListAccountResponse;
import com.icss.regie.weixin.beans.ListAccountStatusRequest;
import com.icss.regie.weixin.beans.ListAccountStatusResponse;
import com.icss.regie.weixin.beans.ListBlackUserRequest;
import com.icss.regie.weixin.beans.ListBlackUserResponse;
import com.icss.regie.weixin.beans.ListGroupRequest;
import com.icss.regie.weixin.beans.ListGroupResponse;
import com.icss.regie.weixin.beans.ListMaterialRequest;
import com.icss.regie.weixin.beans.ListMaterialResponse;
import com.icss.regie.weixin.beans.ListMpNewsRequest;
import com.icss.regie.weixin.beans.ListMpNewsResponse;
import com.icss.regie.weixin.beans.ListSessionLogsRequest;
import com.icss.regie.weixin.beans.ListSessionLogsResponse;
import com.icss.regie.weixin.beans.ListSessionsByAccountRequest;
import com.icss.regie.weixin.beans.ListSessionsByAccountResponse;
import com.icss.regie.weixin.beans.ListTagRequest;
import com.icss.regie.weixin.beans.ListTagResponse;
import com.icss.regie.weixin.beans.ListTemplateRequest;
import com.icss.regie.weixin.beans.ListTemplateResponse;
import com.icss.regie.weixin.beans.ListUserRequest;
import com.icss.regie.weixin.beans.ListUserResponse;
import com.icss.regie.weixin.beans.ListUsersRequest;
import com.icss.regie.weixin.beans.ListUsersResponse;
import com.icss.regie.weixin.beans.MoveGroupRequest;
import com.icss.regie.weixin.beans.MoveGroupResponse;
import com.icss.regie.weixin.beans.PreviewMsgRequest;
import com.icss.regie.weixin.beans.PreviewMsgResponse;
import com.icss.regie.weixin.beans.RemarkRequest;
import com.icss.regie.weixin.beans.RemarkResponse;
import com.icss.regie.weixin.beans.ReplyCaseMsgRequest;
import com.icss.regie.weixin.beans.ReplyCaseMsgResponse;
import com.icss.regie.weixin.beans.ReplyCaseMusicMsgRequest;
import com.icss.regie.weixin.beans.ReplyCaseMusicMsgResponse;
import com.icss.regie.weixin.beans.ReplyCaseNewsMsgRequest;
import com.icss.regie.weixin.beans.ReplyCaseNewsMsgResponse;
import com.icss.regie.weixin.beans.ReplyCaseVedioMsgRequest;
import com.icss.regie.weixin.beans.ReplyCaseVedioMsgResponse;
import com.icss.regie.weixin.beans.ReplyMsgRequest;
import com.icss.regie.weixin.beans.ReplyMsgResponse;
import com.icss.regie.weixin.beans.ReplyTmplMsgRequest;
import com.icss.regie.weixin.beans.ReplyTmplMsgResponse;
import com.icss.regie.weixin.beans.RtrvAllMenuRequest;
import com.icss.regie.weixin.beans.RtrvAllMenuResponse;
import com.icss.regie.weixin.beans.RtrvMenuRequest;
import com.icss.regie.weixin.beans.RtrvMenuResponse;
import com.icss.regie.weixin.beans.RtrvMpNewsRequest;
import com.icss.regie.weixin.beans.RtrvMpNewsResponse;
import com.icss.regie.weixin.beans.RtrvRuleMenusRequest;
import com.icss.regie.weixin.beans.RtrvRuleMenusResponse;
import com.icss.regie.weixin.beans.RtrvSessionRequest;
import com.icss.regie.weixin.beans.RtrvSessionResponse;
import com.icss.regie.weixin.beans.RtrvTemplateRequest;
import com.icss.regie.weixin.beans.RtrvTemplateResponse;
import com.icss.regie.weixin.beans.RtrvUserGroupRequest;
import com.icss.regie.weixin.beans.RtrvUserGroupResponse;
import com.icss.regie.weixin.beans.RtrvUserRequest;
import com.icss.regie.weixin.beans.RtrvUserResponse;
import com.icss.regie.weixin.beans.RtrvUserTagsRequest;
import com.icss.regie.weixin.beans.RtrvUserTagsResponse;
import com.icss.regie.weixin.beans.RtrvUsersRequest;
import com.icss.regie.weixin.beans.RtrvUsersResponse;
import com.icss.regie.weixin.beans.RtrvVideoMaterialRequest;
import com.icss.regie.weixin.beans.RtrvVideoMaterialResponse;
import com.icss.regie.weixin.beans.RtrvWaitingSessionsRequest;
import com.icss.regie.weixin.beans.RtrvWaitingSessionsResponse;
import com.icss.regie.weixin.beans.SetIndustriesRequest;
import com.icss.regie.weixin.beans.SetIndustriesResponse;
import com.icss.regie.weixin.beans.TagUsersRequest;
import com.icss.regie.weixin.beans.TagUsersResponse;
import com.icss.regie.weixin.beans.UnTagUsersRequest;
import com.icss.regie.weixin.beans.UnTagUsersResponse;
import com.icss.regie.weixin.beans.UnblackRequest;
import com.icss.regie.weixin.beans.UnblackResponse;
import com.icss.regie.weixin.beans.UpdateAccountRequest;
import com.icss.regie.weixin.beans.UpdateAccountResponse;
import com.icss.regie.weixin.beans.UpdateGroupRequest;
import com.icss.regie.weixin.beans.UpdateGroupResponse;
import com.icss.regie.weixin.beans.UpdateMpNewsRequest;
import com.icss.regie.weixin.beans.UpdateMpNewsResponse;
import com.icss.regie.weixin.beans.UpdateTagRequest;
import com.icss.regie.weixin.beans.UpdateTagResponse;
import com.icss.regie.weixin.beans.UploadHeadImageRequest;
import com.icss.regie.weixin.beans.UploadHeadImageResponse;
import com.icss.regie.weixin.beans.UploadMaterialRequest;
import com.icss.regie.weixin.beans.UploadMaterialResponse;
import com.icss.regie.weixin.beans.UploadMediaRequest;
import com.icss.regie.weixin.beans.UploadMediaResponse;
import com.icss.regie.weixin.beans.commons.faults.BusinessException;
import com.icss.regie.weixin.beans.commons.faults.TechnicalException;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebResult;
import javax.jws.WebService;
import javax.jws.soap.SOAPBinding;
import javax.ws.rs.Path;
import javax.ws.rs.Consumes;
import javax.ws.rs.POST;
import javax.ws.rs.Produces;
import javax.xml.ws.Action;
import javax.xml.ws.FaultAction;
import javax.xml.ws.RequestWrapper;
import javax.xml.ws.ResponseWrapper;
import javax.xml.ws.soap.MTOM;
import org.apache.cxf.annotations.WSDLDocumentation;
import org.springframework.http.MediaType;

@WebService(targetNamespace = "http://gateways.weixin.regie.icss.com", name = "WeixinService")
@SOAPBinding(style = SOAPBinding.Style.DOCUMENT, use = SOAPBinding.Use.LITERAL, parameterStyle = SOAPBinding.ParameterStyle.WRAPPED)
@MTOM
//@XmlSeeAlso({
//    com.icss.regie.weixin.beans.ObjectFactory.class
//})
@Path("")
public interface WeixinService {

    @POST
    @Path("/addAccount")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("添加客服账号")
    @WebMethod(operationName = "addAccount", action = "http://gateways.weixin.regie.icss.com/WeixinService/addAccount")
    @WebResult(name = "AddAccountResponse", partName = "addAccountResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "addAccount", partName = "addAccountRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.AddAccountRequestWrapper")
    @ResponseWrapper(localName = "addAccountResponse", partName = "addAccountResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.AddAccountResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/addAccountRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/addAccountResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public AddAccountResponse addAccount(@WebParam(name = "AddAccountRequest", targetNamespace = "http://beans.weixin.regie.icss.com") AddAccountRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/updateAccount")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("更新客服账号")
    @WebMethod(operationName = "updateAccount", action = "http://gateways.weixin.regie.icss.com/WeixinService/updateAccount")
    @WebResult(name = "UpdateAccountResponse", partName = "updateAccountResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "updateAccount", partName = "updateAccountRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.UpdateAccountRequestWrapper")
    @ResponseWrapper(localName = "updateAccountResponse", partName = "updateAccountResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.UpdateAccountResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/updateAccountRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/updateAccountResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public UpdateAccountResponse updateAccount(@WebParam(name = "UpdateAccountRequest", targetNamespace = "http://beans.weixin.regie.icss.com") UpdateAccountRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/deleteAccount")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("删除客服账号")
    @WebMethod(operationName = "deleteAccount", action = "http://gateways.weixin.regie.icss.com/WeixinService/deleteAccount")
    @WebResult(name = "DeleteAccountResponse", partName = "deleteAccountResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "deleteAccount", partName = "deleteAccountRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.DeleteAccountRequestWrapper")
    @ResponseWrapper(localName = "deleteAccountResponse", partName = "deleteAccountResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.DeleteAccountResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/deleteAccountRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/deleteAccountResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public DeleteAccountResponse deleteAccount(@WebParam(name = "DeleteAccountRequest", targetNamespace = "http://beans.weixin.regie.icss.com") DeleteAccountRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/uploadHeadImage")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("上传客服头像")
    @WebMethod(operationName = "uploadHeadImage", action = "http://gateways.weixin.regie.icss.com/WeixinService/uploadHeadImage")
    @WebResult(name = "UploadHeadImageResponse", partName = "uploadHeadImageResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "uploadHeadImage", partName = "uploadHeadImageRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.UploadHeadImageRequestWrapper")
    @ResponseWrapper(localName = "uploadHeadImageResponse", partName = "uploadHeadImageResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.UploadHeadImageResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/uploadHeadImageRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/uploadHeadImageResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public UploadHeadImageResponse uploadHeadImage(@WebParam(name = "UploadHeadImageRequest", targetNamespace = "http://beans.weixin.regie.icss.com") UploadHeadImageRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/listAccount")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("获取客服列表")
    @WebMethod(operationName = "listAccount", action = "http://gateways.weixin.regie.icss.com/WeixinService/listAccount")
    @WebResult(name = "ListAccountResponse", partName = "listAccountResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "listAccount", partName = "listAccountRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ListAccountRequestWrapper")
    @ResponseWrapper(localName = "listAccountResponse", partName = "listAccountResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ListAccountResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/listAccountRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/listAccountResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public ListAccountResponse listAccount(@WebParam(name = "ListAccountRequest", targetNamespace = "http://beans.weixin.regie.icss.com") ListAccountRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/listAccountStatus")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("获取客服状态列表")
    @WebMethod(operationName = "listAccountStatus", action = "http://gateways.weixin.regie.icss.com/WeixinService/listAccountStatus")
    @WebResult(name = "ListAccountStatusResponse", partName = "listAccountStatusResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "listAccountStatus", partName = "listAccountStatusRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ListAccountStatusRequestWrapper")
    @ResponseWrapper(localName = "listAccountStatusResponse", partName = "listAccountStatusResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ListAccountStatusResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/listAccountStatusRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/listAccountStatusResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public ListAccountStatusResponse listAccountStatus(@WebParam(name = "ListAccountStatusRequest", targetNamespace = "http://beans.weixin.regie.icss.com") ListAccountStatusRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/createSession")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("创建会话")
    @WebMethod(operationName = "createSession", action = "http://gateways.weixin.regie.icss.com/WeixinService/createSession")
    @WebResult(name = "CreateSessionResponse", partName = "createSessionResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "createSession", partName = "createSessionRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.CreateSessionRequestWrapper")
    @ResponseWrapper(localName = "createSessionResponse", partName = "createSessionResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.CreateSessionResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/createSessionRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/createSessionResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public CreateSessionResponse createSession(@WebParam(name = "CreateSessionRequest", targetNamespace = "http://beans.weixin.regie.icss.com") CreateSessionRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/closeSession")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("关闭会话")
    @WebMethod(operationName = "closeSession", action = "http://gateways.weixin.regie.icss.com/WeixinService/closeSession")
    @WebResult(name = "CloseSessionResponse", partName = "closeSessionResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "closeSession", partName = "closeSessionRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.CloseSessionRequestWrapper")
    @ResponseWrapper(localName = "closeSessionResponse", partName = "closeSessionResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.CloseSessionResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/closeSessionRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/closeSessionResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public CloseSessionResponse closeSession(@WebParam(name = "CloseSessionRequest", targetNamespace = "http://beans.weixin.regie.icss.com") CloseSessionRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/rtrvSession")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("获取会话")
    @WebMethod(operationName = "rtrvSession", action = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvSession")
    @WebResult(name = "RtrvSessionResponse", partName = "rtrvSessionResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "rtrvSession", partName = "rtrvSessionRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.RtrvSessionRequestWrapper")
    @ResponseWrapper(localName = "rtrvSessionResponse", partName = "rtrvSessionResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.RtrvSessionResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvSessionRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvSessionResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public RtrvSessionResponse rtrvSession(@WebParam(name = "RtrvSessionRequest", targetNamespace = "http://beans.weixin.regie.icss.com") RtrvSessionRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/listSessionsByAccount")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("获取某客服人员会话列表")
    @WebMethod(operationName = "listSessionsByAccount", action = "http://gateways.weixin.regie.icss.com/WeixinService/listSessionsByAccount")
    @WebResult(name = "ListSessionsByAccountResponse", partName = "listSessionsByAccountResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "listSessionsByAccount", partName = "listSessionsByAccountRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ListSessionsByAccountRequestWrapper")
    @ResponseWrapper(localName = "listSessionsByAccountResponse", partName = "listSessionsByAccountResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ListSessionsByAccountResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/listSessionsByAccountRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/listSessionsByAccountResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public ListSessionsByAccountResponse listSessionsByAccount(@WebParam(name = "ListSessionsByAccountRequest", targetNamespace = "http://beans.weixin.regie.icss.com") ListSessionsByAccountRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/rtrvWaitingSessions")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("获取未接入会话列表")
    @WebMethod(operationName = "rtrvWaitingSessions", action = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvWaitingSessions")
    @WebResult(name = "RtrvWaitingSessionsResponse", partName = "rtrvWaitingSessionsResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "rtrvWaitingSessions", partName = "rtrvWaitingSessionsRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.RtrvWaitingSessionsRequestWrapper")
    @ResponseWrapper(localName = "rtrvWaitingSessionsResponse", partName = "rtrvWaitingSessionsResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.RtrvWaitingSessionsResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvWaitingSessionsRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvWaitingSessionsResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public RtrvWaitingSessionsResponse rtrvWaitingSessions(@WebParam(name = "RtrvWaitingSessionsRequest", targetNamespace = "http://beans.weixin.regie.icss.com") RtrvWaitingSessionsRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/listSessionLogs")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("获取客服聊天记录")
    @WebMethod(operationName = "listSessionLogs", action = "http://gateways.weixin.regie.icss.com/WeixinService/listSessionLogs")
    @WebResult(name = "ListSessionLogsResponse", partName = "listSessionLogsResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "listSessionLogs", partName = "listSessionLogsRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ListSessionLogsRequestWrapper")
    @ResponseWrapper(localName = "listSessionLogsResponse", partName = "listSessionLogsResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ListSessionLogsResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/listSessionLogsRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/listSessionLogsResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public ListSessionLogsResponse listSessionLogs(@WebParam(name = "ListSessionLogsRequest", targetNamespace = "http://beans.weixin.regie.icss.com") ListSessionLogsRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/black")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("拉黑")
    @WebMethod(operationName = "black", action = "http://gateways.weixin.regie.icss.com/WeixinService/black")
    @WebResult(name = "BlackResponse", partName = "blackResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "black", partName = "blackRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.BlackRequestWrapper")
    @ResponseWrapper(localName = "blackResponse", partName = "blackResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.BlackResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/blackRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/blackResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public BlackResponse black(@WebParam(name = "BlackRequest", targetNamespace = "http://beans.weixin.regie.icss.com") BlackRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/unblack")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("取消拉黑")
    @WebMethod(operationName = "unblack", action = "http://gateways.weixin.regie.icss.com/WeixinService/unblack")
    @WebResult(name = "UnblackResponse", partName = "unblackResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "unblack", partName = "unblackRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.UnblackRequestWrapper")
    @ResponseWrapper(localName = "unblackResponse", partName = "unblackResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.UnblackResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/unblackRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/unblackResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public UnblackResponse unblack(@WebParam(name = "UnblackRequest", targetNamespace = "http://beans.weixin.regie.icss.com") UnblackRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/listBlackUser")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("获取黑名单列表")
    @WebMethod(operationName = "listBlackUser", action = "http://gateways.weixin.regie.icss.com/WeixinService/listBlackUser")
    @WebResult(name = "ListBlackUserResponse", partName = "listBlackUserResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "listBlackUser", partName = "listBlackUserRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ListBlackUserRequestWrapper")
    @ResponseWrapper(localName = "listBlackUserResponse", partName = "listBlackUserResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ListBlackUserResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/listBlackUserRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/listBlackUserResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public ListBlackUserResponse listBlackUser(@WebParam(name = "ListBlackUserRequest", targetNamespace = "http://beans.weixin.regie.icss.com") ListBlackUserRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/createGroup")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("创建分组")
    @WebMethod(operationName = "createGroup", action = "http://gateways.weixin.regie.icss.com/WeixinService/createGroup")
    @WebResult(name = "CreateGroupResponse", partName = "createGroupResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "createGroup", partName = "createGroupRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.CreateGroupRequestWrapper")
    @ResponseWrapper(localName = "createGroupResponse", partName = "createGroupResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.CreateGroupResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/createGroupRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/createGroupResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public CreateGroupResponse createGroup(@WebParam(name = "CreateGroupRequest", targetNamespace = "http://beans.weixin.regie.icss.com") CreateGroupRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/listGroup")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("查询所有分组")
    @WebMethod(operationName = "listGroup", action = "http://gateways.weixin.regie.icss.com/WeixinService/listGroup")
    @WebResult(name = "ListGroupResponse", partName = "listGroupResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "listGroup", partName = "listGroupRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ListGroupRequestWrapper")
    @ResponseWrapper(localName = "listGroupResponse", partName = "listGroupResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ListGroupResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/listGroupRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/listGroupResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public ListGroupResponse listGroup(@WebParam(name = "ListGroupRequest", targetNamespace = "http://beans.weixin.regie.icss.com") ListGroupRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/updateGroup")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("修改分组")
    @WebMethod(operationName = "updateGroup", action = "http://gateways.weixin.regie.icss.com/WeixinService/updateGroup")
    @WebResult(name = "UpdateGroupResponse", partName = "updateGroupResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "updateGroup", partName = "updateGroupRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.UpdateGroupRequestWrapper")
    @ResponseWrapper(localName = "updateGroupResponse", partName = "updateGroupResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.UpdateGroupResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/updateGroupRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/updateGroupResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public UpdateGroupResponse updateGroup(@WebParam(name = "UpdateGroupRequest", targetNamespace = "http://beans.weixin.regie.icss.com") UpdateGroupRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/deleteGroup")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("删除分组")
    @WebMethod(operationName = "deleteGroup", action = "http://gateways.weixin.regie.icss.com/WeixinService/deleteGroup")
    @WebResult(name = "DeleteGroupResponse", partName = "deleteGroupResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "deleteGroup", partName = "deleteGroupRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.DeleteGroupRequestWrapper")
    @ResponseWrapper(localName = "deleteGroupResponse", partName = "deleteGroupResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.DeleteGroupResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/deleteGroupRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/deleteGroupResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public DeleteGroupResponse deleteGroup(@WebParam(name = "DeleteGroupRequest", targetNamespace = "http://beans.weixin.regie.icss.com") DeleteGroupRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/rtrvUserGroup")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("2B微信，只给个id有鸟用")
    @WebMethod(operationName = "rtrvUserGroup", action = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvUserGroup")
    @WebResult(name = "RtrvUserGroupResponse", partName = "rtrvUserGroupResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "rtrvUserGroup", partName = "rtrvUserGroupRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.RtrvUserGroupRequestWrapper")
    @ResponseWrapper(localName = "rtrvUserGroupResponse", partName = "rtrvUserGroupResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.RtrvUserGroupResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvUserGroupRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvUserGroupResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public RtrvUserGroupResponse rtrvUserGroup(@WebParam(name = "RtrvUserGroupRequest", targetNamespace = "http://beans.weixin.regie.icss.com") RtrvUserGroupRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/moveGroup")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("批量用户分组迁移")
    @WebMethod(operationName = "moveGroup", action = "http://gateways.weixin.regie.icss.com/WeixinService/moveGroup")
    @WebResult(name = "MoveGroupResponse", partName = "moveGroupResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "moveGroup", partName = "moveGroupRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.MoveGroupRequestWrapper")
    @ResponseWrapper(localName = "moveGroupResponse", partName = "moveGroupResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.MoveGroupResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/moveGroupRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/moveGroupResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public MoveGroupResponse moveGroup(@WebParam(name = "MoveGroupRequest", targetNamespace = "http://beans.weixin.regie.icss.com") MoveGroupRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/createTag")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("增加标签")
    @WebMethod(operationName = "createTag", action = "http://gateways.weixin.regie.icss.com/WeixinService/createTag")
    @WebResult(name = "CreateTagResponse", partName = "createTagResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "createTag", partName = "createTagRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.CreateTagRequestWrapper")
    @ResponseWrapper(localName = "createTagResponse", partName = "createTagResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.CreateTagResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/createTagRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/createTagResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public CreateTagResponse createTag(@WebParam(name = "CreateTagRequest", targetNamespace = "http://beans.weixin.regie.icss.com") CreateTagRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/updateTag")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("修改标签")
    @WebMethod(operationName = "updateTag", action = "http://gateways.weixin.regie.icss.com/WeixinService/updateTag")
    @WebResult(name = "UpdateTagResponse", partName = "updateTagResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "updateTag", partName = "updateTagRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.UpdateTagRequestWrapper")
    @ResponseWrapper(localName = "updateTagResponse", partName = "updateTagResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.UpdateTagResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/updateTagRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/updateTagResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public UpdateTagResponse updateTag(@WebParam(name = "UpdateTagRequest", targetNamespace = "http://beans.weixin.regie.icss.com") UpdateTagRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/deleteTag")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("删除标签")
    @WebMethod(operationName = "deleteTag", action = "http://gateways.weixin.regie.icss.com/WeixinService/deleteTag")
    @WebResult(name = "DeleteTagResponse", partName = "deleteTagResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "deleteTag", partName = "deleteTagRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.DeleteTagRequestWrapper")
    @ResponseWrapper(localName = "deleteTagResponse", partName = "deleteTagResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.DeleteTagResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/deleteTagRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/deleteTagResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public DeleteTagResponse deleteTag(@WebParam(name = "DeleteTagRequest", targetNamespace = "http://beans.weixin.regie.icss.com") DeleteTagRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/listTag")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("获取所有的标签")
    @WebMethod(operationName = "listTag", action = "http://gateways.weixin.regie.icss.com/WeixinService/listTag")
    @WebResult(name = "ListTagResponse", partName = "listTagResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "listTag", partName = "listTagRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ListTagRequestWrapper")
    @ResponseWrapper(localName = "listTagResponse", partName = "listTagResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ListTagResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/listTagRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/listTagResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public ListTagResponse listTag(@WebParam(name = "ListTagRequest", targetNamespace = "http://beans.weixin.regie.icss.com") ListTagRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/listUsers")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("获取标签下的用户列表")
    @WebMethod(operationName = "listUsers", action = "http://gateways.weixin.regie.icss.com/WeixinService/listUsers")
    @WebResult(name = "ListUsersResponse", partName = "listUsersResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "listUsers", partName = "listUsersRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ListUsersRequestWrapper")
    @ResponseWrapper(localName = "listUsersResponse", partName = "listUsersResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ListUsersResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/listUsersRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/listUsersResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public ListUsersResponse listUsers(@WebParam(name = "ListUsersRequest", targetNamespace = "http://beans.weixin.regie.icss.com") ListUsersRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/tagUsers")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("给一批用户加标签")
    @WebMethod(operationName = "tagUsers", action = "http://gateways.weixin.regie.icss.com/WeixinService/tagUsers")
    @WebResult(name = "TagUsersResponse", partName = "tagUsersResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "tagUsers", partName = "tagUsersRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.TagUsersRequestWrapper")
    @ResponseWrapper(localName = "tagUsersResponse", partName = "tagUsersResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.TagUsersResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/tagUsersRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/tagUsersResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public TagUsersResponse tagUsers(@WebParam(name = "TagUsersRequest", targetNamespace = "http://beans.weixin.regie.icss.com") TagUsersRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/unTagUsers")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("给一批用户加取消标签")
    @WebMethod(operationName = "unTagUsers", action = "http://gateways.weixin.regie.icss.com/WeixinService/unTagUsers")
    @WebResult(name = "UnTagUsersResponse", partName = "unTagUsersResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "unTagUsers", partName = "unTagUsersRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.UnTagUsersRequestWrapper")
    @ResponseWrapper(localName = "unTagUsersResponse", partName = "unTagUsersResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.UnTagUsersResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/unTagUsersRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/unTagUsersResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public UnTagUsersResponse unTagUsers(@WebParam(name = "UnTagUsersRequest", targetNamespace = "http://beans.weixin.regie.icss.com") UnTagUsersRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/rtrvUserTags")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("获取用户身上标签")
    @WebMethod(operationName = "rtrvUserTags", action = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvUserTags")
    @WebResult(name = "RtrvUserTagsResponse", partName = "rtrvUserTagsResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "rtrvUserTags", partName = "rtrvUserTagsRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.RtrvUserTagsRequestWrapper")
    @ResponseWrapper(localName = "rtrvUserTagsResponse", partName = "rtrvUserTagsResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.RtrvUserTagsResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvUserTagsRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvUserTagsResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public RtrvUserTagsResponse rtrvUserTags(@WebParam(name = "RtrvUserTagsRequest", targetNamespace = "http://beans.weixin.regie.icss.com") RtrvUserTagsRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/rtrvUsers")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("批量获取用户信息，一次最多100个")
    @WebMethod(operationName = "rtrvUsers", action = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvUsers")
    @WebResult(name = "RtrvUsersResponse", partName = "rtrvUsersResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "rtrvUsers", partName = "rtrvUsersRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.RtrvUsersRequestWrapper")
    @ResponseWrapper(localName = "rtrvUsersResponse", partName = "rtrvUsersResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.RtrvUsersResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvUsersRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvUsersResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public RtrvUsersResponse rtrvUsers(@WebParam(name = "RtrvUsersRequest", targetNamespace = "http://beans.weixin.regie.icss.com") RtrvUsersRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/listUser")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("获取用户列表")
    @WebMethod(operationName = "listUser", action = "http://gateways.weixin.regie.icss.com/WeixinService/listUser")
    @WebResult(name = "ListUserResponse", partName = "listUserResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "listUser", partName = "listUserRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ListUserRequestWrapper")
    @ResponseWrapper(localName = "listUserResponse", partName = "listUserResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ListUserResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/listUserRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/listUserResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public ListUserResponse listUser(@WebParam(name = "ListUserRequest", targetNamespace = "http://beans.weixin.regie.icss.com") ListUserRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/rtrvUser")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("获取用户信息")
    @WebMethod(operationName = "rtrvUser", action = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvUser")
    @WebResult(name = "RtrvUserResponse", partName = "rtrvUserResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "rtrvUser", partName = "rtrvUserRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.RtrvUserRequestWrapper")
    @ResponseWrapper(localName = "rtrvUserResponse", partName = "rtrvUserResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.RtrvUserResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvUserRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvUserResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public RtrvUserResponse rtrvUser(@WebParam(name = "RtrvUserRequest", targetNamespace = "http://beans.weixin.regie.icss.com") RtrvUserRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/remark")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("给用户添加备注")
    @WebMethod(operationName = "remark", action = "http://gateways.weixin.regie.icss.com/WeixinService/remark")
    @WebResult(name = "RemarkResponse", partName = "remarkResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "remark", partName = "remarkRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.RemarkRequestWrapper")
    @ResponseWrapper(localName = "remarkResponse", partName = "remarkResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.RemarkResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/remarkRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/remarkResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public RemarkResponse remark(@WebParam(name = "RemarkRequest", targetNamespace = "http://beans.weixin.regie.icss.com") RemarkRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/uploadMedia")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("上传永久图文")
    @WebMethod(operationName = "uploadMedia", action = "http://gateways.weixin.regie.icss.com/WeixinService/uploadMedia")
    @WebResult(name = "UploadMediaResponse", partName = "uploadMediaResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "uploadMedia", partName = "uploadMediaRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.UploadMediaRequestWrapper")
    @ResponseWrapper(localName = "uploadMediaResponse", partName = "uploadMediaResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.UploadMediaResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/uploadMediaRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/uploadMediaResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public UploadMediaResponse uploadMedia(@WebParam(name = "UploadMediaRequest", targetNamespace = "http://beans.weixin.regie.icss.com") UploadMediaRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/downloadMedia")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("下载永久图文")
    @WebMethod(operationName = "downloadMedia", action = "http://gateways.weixin.regie.icss.com/WeixinService/downloadMedia")
    @WebResult(name = "DownloadMediaResponse", partName = "downloadMediaResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "downloadMedia", partName = "downloadMediaRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.DownloadMediaRequestWrapper")
    @ResponseWrapper(localName = "downloadMediaResponse", partName = "downloadMediaResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.DownloadMediaResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/downloadMediaRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/downloadMediaResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public DownloadMediaResponse downloadMedia(@WebParam(name = "DownloadMediaRequest", targetNamespace = "http://beans.weixin.regie.icss.com") DownloadMediaRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/deleteMedia")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("删除永久素材")
    @WebMethod(operationName = "deleteMedia", action = "http://gateways.weixin.regie.icss.com/WeixinService/deleteMedia")
    @WebResult(name = "DeleteMediaResponse", partName = "deleteMediaResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "deleteMedia", partName = "deleteMediaRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.DeleteMediaRequestWrapper")
    @ResponseWrapper(localName = "deleteMediaResponse", partName = "deleteMediaResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.DeleteMediaResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/deleteMediaRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/deleteMediaResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public DeleteMediaResponse deleteMedia(@WebParam(name = "DeleteMediaRequest", targetNamespace = "http://beans.weixin.regie.icss.com") DeleteMediaRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/addMpNewsImage")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("图文消息的content里面如果有图片，该图片需要使用本方法上传，图片仅支持jpg/png格式，大小必须在1MB以下")
    @WebMethod(operationName = "addMpNewsImage", action = "http://gateways.weixin.regie.icss.com/WeixinService/addMpNewsImage")
    @WebResult(name = "AddMpNewsImageResponse", partName = "addMpNewsImageResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "addMpNewsImage", partName = "addMpNewsImageRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.AddMpNewsImageRequestWrapper")
    @ResponseWrapper(localName = "addMpNewsImageResponse", partName = "addMpNewsImageResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.AddMpNewsImageResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/addMpNewsImageRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/addMpNewsImageResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public AddMpNewsImageResponse addMpNewsImage(@WebParam(name = "AddMpNewsImageRequest", targetNamespace = "http://beans.weixin.regie.icss.com") AddMpNewsImageRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/addMpNews")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("上传一个图文素材")
    @WebMethod(operationName = "addMpNews", action = "http://gateways.weixin.regie.icss.com/WeixinService/addMpNews")
    @WebResult(name = "AddMpNewsResponse", partName = "addMpNewsResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "addMpNews", partName = "addMpNewsRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.AddMpNewsRequestWrapper")
    @ResponseWrapper(localName = "addMpNewsResponse", partName = "addMpNewsResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.AddMpNewsResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/addMpNewsRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/addMpNewsResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public AddMpNewsResponse addMpNews(@WebParam(name = "AddMpNewsRequest", targetNamespace = "http://beans.weixin.regie.icss.com") AddMpNewsRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/rtrvMpNews")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("获取图文素材")
    @WebMethod(operationName = "rtrvMpNews", action = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvMpNews")
    @WebResult(name = "RtrvMpNewsResponse", partName = "rtrvMpNewsResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "rtrvMpNews", partName = "rtrvMpNewsRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.RtrvMpNewsRequestWrapper")
    @ResponseWrapper(localName = "rtrvMpNewsResponse", partName = "rtrvMpNewsResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.RtrvMpNewsResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvMpNewsRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvMpNewsResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public RtrvMpNewsResponse rtrvMpNews(@WebParam(name = "RtrvMpNewsRequest", targetNamespace = "http://beans.weixin.regie.icss.com") RtrvMpNewsRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/updateMpNews")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("修改图文素材")
    @WebMethod(operationName = "updateMpNews", action = "http://gateways.weixin.regie.icss.com/WeixinService/updateMpNews")
    @WebResult(name = "UpdateMpNewsResponse", partName = "updateMpNewsResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "updateMpNews", partName = "updateMpNewsRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.UpdateMpNewsRequestWrapper")
    @ResponseWrapper(localName = "updateMpNewsResponse", partName = "updateMpNewsResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.UpdateMpNewsResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/updateMpNewsRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/updateMpNewsResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public UpdateMpNewsResponse updateMpNews(@WebParam(name = "UpdateMpNewsRequest", targetNamespace = "http://beans.weixin.regie.icss.com") UpdateMpNewsRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/uploadMaterial")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("上传材料")
    @WebMethod(operationName = "uploadMaterial", action = "http://gateways.weixin.regie.icss.com/WeixinService/uploadMaterial")
    @WebResult(name = "UploadMaterialResponse", partName = "uploadMaterialResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "uploadMaterial", partName = "uploadMaterialRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.UploadMaterialRequestWrapper")
    @ResponseWrapper(localName = "uploadMaterialResponse", partName = "uploadMaterialResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.UploadMaterialResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/uploadMaterialRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/uploadMaterialResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public UploadMaterialResponse uploadMaterial(@WebParam(name = "UploadMaterialRequest", targetNamespace = "http://beans.weixin.regie.icss.com") UploadMaterialRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/downloadMaterial")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("下载材料")
    @WebMethod(operationName = "downloadMaterial", action = "http://gateways.weixin.regie.icss.com/WeixinService/downloadMaterial")
    @WebResult(name = "DownloadMaterialResponse", partName = "downloadMaterialResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "downloadMaterial", partName = "downloadMaterialRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.DownloadMaterialRequestWrapper")
    @ResponseWrapper(localName = "downloadMaterialResponse", partName = "downloadMaterialResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.DownloadMaterialResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/downloadMaterialRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/downloadMaterialResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public DownloadMaterialResponse downloadMaterial(@WebParam(name = "DownloadMaterialRequest", targetNamespace = "http://beans.weixin.regie.icss.com") DownloadMaterialRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/rtrvVideoMaterial")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("获取视频")
    @WebMethod(operationName = "rtrvVideoMaterial", action = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvVideoMaterial")
    @WebResult(name = "RtrvVideoMaterialResponse", partName = "rtrvVideoMaterialResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "rtrvVideoMaterial", partName = "rtrvVideoMaterialRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.RtrvVideoMaterialRequestWrapper")
    @ResponseWrapper(localName = "rtrvVideoMaterialResponse", partName = "rtrvVideoMaterialResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.RtrvVideoMaterialResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvVideoMaterialRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvVideoMaterialResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public RtrvVideoMaterialResponse rtrvVideoMaterial(@WebParam(name = "RtrvVideoMaterialRequest", targetNamespace = "http://beans.weixin.regie.icss.com") RtrvVideoMaterialRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/countMaterial")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("获取材料个数")
    @WebMethod(operationName = "countMaterial", action = "http://gateways.weixin.regie.icss.com/WeixinService/countMaterial")
    @WebResult(name = "CountMaterialResponse", partName = "countMaterialResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "countMaterial", partName = "countMaterialRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.CountMaterialRequestWrapper")
    @ResponseWrapper(localName = "countMaterialResponse", partName = "countMaterialResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.CountMaterialResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/countMaterialRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/countMaterialResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public CountMaterialResponse countMaterial(@WebParam(name = "CountMaterialRequest", targetNamespace = "http://beans.weixin.regie.icss.com") CountMaterialRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/listMaterial")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("获取材料列表")
    @WebMethod(operationName = "listMaterial", action = "http://gateways.weixin.regie.icss.com/WeixinService/listMaterial")
    @WebResult(name = "ListMaterialResponse", partName = "listMaterialResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "listMaterial", partName = "listMaterialRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ListMaterialRequestWrapper")
    @ResponseWrapper(localName = "listMaterialResponse", partName = "listMaterialResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ListMaterialResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/listMaterialRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/listMaterialResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public ListMaterialResponse listMaterial(@WebParam(name = "ListMaterialRequest", targetNamespace = "http://beans.weixin.regie.icss.com") ListMaterialRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/listMpNews")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("获取图文列表")
    @WebMethod(operationName = "listMpNews", action = "http://gateways.weixin.regie.icss.com/WeixinService/listMpNews")
    @WebResult(name = "ListMpNewsResponse", partName = "listMpNewsResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "listMpNews", partName = "listMpNewsRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ListMpNewsRequestWrapper")
    @ResponseWrapper(localName = "listMpNewsResponse", partName = "listMpNewsResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ListMpNewsResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/listMpNewsRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/listMpNewsResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public ListMpNewsResponse listMpNews(@WebParam(name = "ListMpNewsRequest", targetNamespace = "http://beans.weixin.regie.icss.com") ListMpNewsRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/setIndustries")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("设置行业信息")
    @WebMethod(operationName = "setIndustries", action = "http://gateways.weixin.regie.icss.com/WeixinService/setIndustries")
    @WebResult(name = "SetIndustriesResponse", partName = "setIndustriesResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "setIndustries", partName = "setIndustriesRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.SetIndustriesRequestWrapper")
    @ResponseWrapper(localName = "setIndustriesResponse", partName = "setIndustriesResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.SetIndustriesResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/setIndustriesRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/setIndustriesResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public SetIndustriesResponse setIndustries(@WebParam(name = "SetIndustriesRequest", targetNamespace = "http://beans.weixin.regie.icss.com") SetIndustriesRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/getIndustries")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("获取行业信息")
    @WebMethod(operationName = "getIndustries", action = "http://gateways.weixin.regie.icss.com/WeixinService/getIndustries")
    @WebResult(name = "GetIndustriesResponse", partName = "getIndustriesResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "getIndustries", partName = "getIndustriesRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.GetIndustriesRequestWrapper")
    @ResponseWrapper(localName = "getIndustriesResponse", partName = "getIndustriesResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.GetIndustriesResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/getIndustriesRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/getIndustriesResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public GetIndustriesResponse getIndustries(@WebParam(name = "GetIndustriesRequest", targetNamespace = "http://beans.weixin.regie.icss.com") GetIndustriesRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/rtrvTemplate")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("获取模板")
    @WebMethod(operationName = "rtrvTemplate", action = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvTemplate")
    @WebResult(name = "RtrvTemplateResponse", partName = "rtrvTemplateResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "rtrvTemplate", partName = "rtrvTemplateRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.RtrvTemplateRequestWrapper")
    @ResponseWrapper(localName = "rtrvTemplateResponse", partName = "rtrvTemplateResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.RtrvTemplateResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvTemplateRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvTemplateResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public RtrvTemplateResponse rtrvTemplate(@WebParam(name = "RtrvTemplateRequest", targetNamespace = "http://beans.weixin.regie.icss.com") RtrvTemplateRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/listTemplate")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("获取模板列表")
    @WebMethod(operationName = "listTemplate", action = "http://gateways.weixin.regie.icss.com/WeixinService/listTemplate")
    @WebResult(name = "ListTemplateResponse", partName = "listTemplateResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "listTemplate", partName = "listTemplateRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ListTemplateRequestWrapper")
    @ResponseWrapper(localName = "listTemplateResponse", partName = "listTemplateResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ListTemplateResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/listTemplateRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/listTemplateResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public ListTemplateResponse listTemplate(@WebParam(name = "ListTemplateRequest", targetNamespace = "http://beans.weixin.regie.icss.com") ListTemplateRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/deleteTemplate")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("删除模板")
    @WebMethod(operationName = "deleteTemplate", action = "http://gateways.weixin.regie.icss.com/WeixinService/deleteTemplate")
    @WebResult(name = "DeleteTemplateResponse", partName = "deleteTemplateResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "deleteTemplate", partName = "deleteTemplateRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.DeleteTemplateRequestWrapper")
    @ResponseWrapper(localName = "deleteTemplateResponse", partName = "deleteTemplateResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.DeleteTemplateResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/deleteTemplateRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/deleteTemplateResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public DeleteTemplateResponse deleteTemplate(@WebParam(name = "DeleteTemplateRequest", targetNamespace = "http://beans.weixin.regie.icss.com") DeleteTemplateRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/replyTmplMsg")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("发送模板消息，不受时间限制")
    @WebMethod(operationName = "replyTmplMsg", action = "http://gateways.weixin.regie.icss.com/WeixinService/replyTmplMsg")
    @WebResult(name = "ReplyTmplMsgResponse", partName = "replyTmplMsgResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "replyTmplMsg", partName = "replyTmplMsgRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ReplyTmplMsgRequestWrapper")
    @ResponseWrapper(localName = "replyTmplMsgResponse", partName = "replyTmplMsgResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ReplyTmplMsgResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/replyTmplMsgRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/replyTmplMsgResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public ReplyTmplMsgResponse replyTmplMsg(@WebParam(name = "ReplyTmplMsgRequest", targetNamespace = "http://beans.weixin.regie.icss.com") ReplyTmplMsgRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/replyMsg")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("发送消息")
    @WebMethod(operationName = "replyMsg", action = "http://gateways.weixin.regie.icss.com/WeixinService/replyMsg")
    @WebResult(name = "ReplyMsgResponse", partName = "replyMsgResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "replyMsg", partName = "replyMsgRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ReplyMsgRequestWrapper")
    @ResponseWrapper(localName = "replyMsgResponse", partName = "replyMsgResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ReplyMsgResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/replyMsgRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/replyMsgResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public ReplyMsgResponse replyMsg(@WebParam(name = "ReplyMsgRequest", targetNamespace = "http://beans.weixin.regie.icss.com") ReplyMsgRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/previewMsg")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("预览消息")
    @WebMethod(operationName = "previewMsg", action = "http://gateways.weixin.regie.icss.com/WeixinService/previewMsg")
    @WebResult(name = "PreviewMsgResponse", partName = "previewMsgResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "previewMsg", partName = "previewMsgRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.PreviewMsgRequestWrapper")
    @ResponseWrapper(localName = "previewMsgResponse", partName = "previewMsgResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.PreviewMsgResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/previewMsgRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/previewMsgResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public PreviewMsgResponse previewMsg(@WebParam(name = "PreviewMsgRequest", targetNamespace = "http://beans.weixin.regie.icss.com") PreviewMsgRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/replyCaseMsg")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("客服发送消息")
    @WebMethod(operationName = "replyCaseMsg", action = "http://gateways.weixin.regie.icss.com/WeixinService/replyCaseMsg")
    @WebResult(name = "ReplyCaseMsgResponse", partName = "replyCaseMsgResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "replyCaseMsg", partName = "replyCaseMsgRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ReplyCaseMsgRequestWrapper")
    @ResponseWrapper(localName = "replyCaseMsgResponse", partName = "replyCaseMsgResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ReplyCaseMsgResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/replyCaseMsgRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/replyCaseMsgResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public ReplyCaseMsgResponse replyCaseMsg(@WebParam(name = "ReplyCaseMsgRequest", targetNamespace = "http://beans.weixin.regie.icss.com") ReplyCaseMsgRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/replyCaseVedioMsg")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("客服发送视频信息")
    @WebMethod(operationName = "replyCaseVedioMsg", action = "http://gateways.weixin.regie.icss.com/WeixinService/replyCaseVedioMsg")
    @WebResult(name = "ReplyCaseVedioMsgResponse", partName = "replyCaseVedioMsgResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "replyCaseVedioMsg", partName = "replyCaseVedioMsgRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ReplyCaseVedioMsgRequestWrapper")
    @ResponseWrapper(localName = "replyCaseVedioMsgResponse", partName = "replyCaseVedioMsgResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ReplyCaseVedioMsgResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/replyCaseVedioMsgRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/replyCaseVedioMsgResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public ReplyCaseVedioMsgResponse replyCaseVedioMsg(@WebParam(name = "ReplyCaseVedioMsgRequest", targetNamespace = "http://beans.weixin.regie.icss.com") ReplyCaseVedioMsgRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/replyCaseMusicMsg")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("客服发送音频信息")
    @WebMethod(operationName = "replyCaseMusicMsg", action = "http://gateways.weixin.regie.icss.com/WeixinService/replyCaseMusicMsg")
    @WebResult(name = "ReplyCaseMusicMsgResponse", partName = "replyCaseMusicMsgResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "replyCaseMusicMsg", partName = "replyCaseMusicMsgRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ReplyCaseMusicMsgRequestWrapper")
    @ResponseWrapper(localName = "replyCaseMusicMsgResponse", partName = "replyCaseMusicMsgResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ReplyCaseMusicMsgResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/replyCaseMusicMsgRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/replyCaseMusicMsgResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public ReplyCaseMusicMsgResponse replyCaseMusicMsg(@WebParam(name = "ReplyCaseMusicMsgRequest", targetNamespace = "http://beans.weixin.regie.icss.com") ReplyCaseMusicMsgRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/replyCaseNewsMsg")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("客服发送图文信息")
    @WebMethod(operationName = "replyCaseNewsMsg", action = "http://gateways.weixin.regie.icss.com/WeixinService/replyCaseNewsMsg")
    @WebResult(name = "ReplyCaseNewsMsgResponse", partName = "replyCaseNewsMsgResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "replyCaseNewsMsg", partName = "replyCaseNewsMsgRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ReplyCaseNewsMsgRequestWrapper")
    @ResponseWrapper(localName = "replyCaseNewsMsgResponse", partName = "replyCaseNewsMsgResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.ReplyCaseNewsMsgResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/replyCaseNewsMsgRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/replyCaseNewsMsgResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public ReplyCaseNewsMsgResponse replyCaseNewsMsg(@WebParam(name = "ReplyCaseNewsMsgRequest", targetNamespace = "http://beans.weixin.regie.icss.com") ReplyCaseNewsMsgRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/createMenu")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("创建菜单")
    @WebMethod(operationName = "createMenu", action = "http://gateways.weixin.regie.icss.com/WeixinService/createMenu")
    @WebResult(name = "CreateMenuResponse", partName = "createMenuResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "createMenu", partName = "createMenuRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.CreateMenuRequestWrapper")
    @ResponseWrapper(localName = "createMenuResponse", partName = "createMenuResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.CreateMenuResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/createMenuRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/createMenuResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public CreateMenuResponse createMenu(@WebParam(name = "CreateMenuRequest", targetNamespace = "http://beans.weixin.regie.icss.com") CreateMenuRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/createRuleMenu")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("创建条件菜单")
    @WebMethod(operationName = "createRuleMenu", action = "http://gateways.weixin.regie.icss.com/WeixinService/createRuleMenu")
    @WebResult(name = "CreateRuleMenuResponse", partName = "createRuleMenuResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "createRuleMenu", partName = "createRuleMenuRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.CreateRuleMenuRequestWrapper")
    @ResponseWrapper(localName = "createRuleMenuResponse", partName = "createRuleMenuResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.CreateRuleMenuResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/createRuleMenuRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/createRuleMenuResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public CreateRuleMenuResponse createRuleMenu(@WebParam(name = "CreateRuleMenuRequest", targetNamespace = "http://beans.weixin.regie.icss.com") CreateRuleMenuRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/deleteMenu")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("删除菜单")
    @WebMethod(operationName = "deleteMenu", action = "http://gateways.weixin.regie.icss.com/WeixinService/deleteMenu")
    @WebResult(name = "DeleteMenuResponse", partName = "deleteMenuResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "deleteMenu", partName = "deleteMenuRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.DeleteMenuRequestWrapper")
    @ResponseWrapper(localName = "deleteMenuResponse", partName = "deleteMenuResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.DeleteMenuResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/deleteMenuRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/deleteMenuResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public DeleteMenuResponse deleteMenu(@WebParam(name = "DeleteMenuRequest", targetNamespace = "http://beans.weixin.regie.icss.com") DeleteMenuRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/rtrvMenu")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("删除条件菜单")
    @WebMethod(operationName = "rtrvMenu", action = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvMenu")
    @WebResult(name = "RtrvMenuResponse", partName = "rtrvMenuResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "rtrvMenu", partName = "rtrvMenuRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.RtrvMenuRequestWrapper")
    @ResponseWrapper(localName = "rtrvMenuResponse", partName = "rtrvMenuResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.RtrvMenuResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvMenuRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvMenuResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public RtrvMenuResponse rtrvMenu(@WebParam(name = "RtrvMenuRequest", targetNamespace = "http://beans.weixin.regie.icss.com") RtrvMenuRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/rtrvRuleMenus")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("获取条件菜单")
    @WebMethod(operationName = "rtrvRuleMenus", action = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvRuleMenus")
    @WebResult(name = "RtrvRuleMenusResponse", partName = "rtrvRuleMenusResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "rtrvRuleMenus", partName = "rtrvRuleMenusRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.RtrvRuleMenusRequestWrapper")
    @ResponseWrapper(localName = "rtrvRuleMenusResponse", partName = "rtrvRuleMenusResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.RtrvRuleMenusResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvRuleMenusRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvRuleMenusResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public RtrvRuleMenusResponse rtrvRuleMenus(@WebParam(name = "RtrvRuleMenusRequest", targetNamespace = "http://beans.weixin.regie.icss.com") RtrvRuleMenusRequest request) throws BusinessException, TechnicalException;

    @POST
    @Path("/rtrvAllMenu")
    @Consumes(MediaType.APPLICATION_JSON_VALUE)
    @Produces(MediaType.APPLICATION_JSON_UTF8_VALUE)
    @WSDLDocumentation("获取所有菜单")
    @WebMethod(operationName = "rtrvAllMenu", action = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvAllMenu")
    @WebResult(name = "RtrvAllMenuResponse", partName = "rtrvAllMenuResponse", targetNamespace = "http://beans.weixin.regie.icss.com")
    @RequestWrapper(localName = "rtrvAllMenu", partName = "rtrvAllMenuRequestWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.RtrvAllMenuRequestWrapper")
    @ResponseWrapper(localName = "rtrvAllMenuResponse", partName = "rtrvAllMenuResponseWrapper", targetNamespace = "http://beans.weixin.regie.icss.com", className = "com.icss.regie.weixin.beans.RtrvAllMenuResponseWrapper")
    @Action(input = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvAllMenuRequest", output = "http://gateways.weixin.regie.icss.com/WeixinService/rtrvAllMenuResponse", fault = {
        @FaultAction(className = BusinessException.class, value = "http://faults.commons.beans.regie.icss.com/BusinessException"),
        @FaultAction(className = TechnicalException.class, value = "http://faults.commons.beans.regie.icss.com/TechnicalException")
    })
    public RtrvAllMenuResponse rtrvAllMenu(@WebParam(name = "RtrvAllMenuRequest", targetNamespace = "http://beans.weixin.regie.icss.com") RtrvAllMenuRequest request) throws BusinessException, TechnicalException;

}
